home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / xa / AttrListQlicker.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  7.0 KB  |  161 lines

  1. package com.extensibility.xa;
  2.  
  3. import com.extensibility.app.UI;
  4. import com.extensibility.rock.BaseMenu;
  5. import com.extensibility.rock.RAction;
  6. import com.extensibility.rock.ScrollPop;
  7. import com.extensibility.rock.SimpleListPopup;
  8. import com.extensibility.rock.table.QlickerCellEditor;
  9. import com.extensibility.rock.table.QlickerDataSource;
  10. import com.extensibility.util.ArrayHelp;
  11. import java.awt.Color;
  12. import java.awt.FlowLayout;
  13. import java.awt.Font;
  14. import java.awt.event.MouseEvent;
  15. import java.util.Enumeration;
  16. import java.util.Vector;
  17. import javax.swing.AbstractButton;
  18. import javax.swing.BorderFactory;
  19. import javax.swing.Icon;
  20. import javax.swing.JMenu;
  21. import javax.swing.JMenuItem;
  22. import javax.swing.JPanel;
  23. import javax.swing.JPopupMenu;
  24. import javax.swing.SwingUtilities;
  25. import javax.swing.text.Document;
  26. import javax.swing.text.JTextComponent;
  27.  
  28. public class AttrListQlicker extends QlickerCellEditor {
  29.    final Color FRAME_COLOR = UI.getColor(2);
  30.    final Color BTN_COLOR = UI.getColor(1);
  31.    Icon icnPop = UI.getIcon("pop.gif");
  32.    public static final String POPUP_DATA = "ATTRIBUTES";
  33.    public static final String ATTR_GROUPS = "ATTRGROUPS";
  34.    QlickerBtn btnAttrPop;
  35.    SchemaDoc doc;
  36.    RAction actionListener = new 1(this);
  37.    RAction createAction = new 2(this);
  38.    RAction editAction = new 3(this);
  39.  
  40.    public AttrListQlicker(SchemaDoc var1, QlickerDataSource var2) {
  41.       super(var2);
  42.       this.doc = var1;
  43.    }
  44.  
  45.    protected JPanel createButtonPanel() {
  46.       super.btnPanel = new JPanel();
  47.       super.btnPanel.setBorder(BorderFactory.createLineBorder(this.FRAME_COLOR));
  48.       FlowLayout var1 = new FlowLayout();
  49.       var1.setHgap(0);
  50.       var1.setVgap(0);
  51.       super.btnPanel.setLayout(var1);
  52.       Font var2 = new Font("Dialog", 0, 9);
  53.       super.btnPanel.setFont(var2);
  54.       this.btnAttrPop = new QlickerBtn(UI.getString("alq.insert"), this.icnPop);
  55.       this.btnAttrPop.setBackground(this.BTN_COLOR);
  56.       this.btnAttrPop.addMouseListener(new Popper(this));
  57.       super.btnPanel.add(this.btnAttrPop);
  58.       super.btnPanel.setSize(super.btnPanel.getLayout().preferredLayoutSize(super.btnPanel));
  59.       return super.btnPanel;
  60.    }
  61.  
  62.    public JPanel adoptBtnPanel() {
  63.       super.btnPanel.remove(0);
  64.       super.btnPanel.revalidate();
  65.       return super.adoptBtnPanel();
  66.    }
  67.  
  68.    protected Document createDocument() {
  69.       return new AttrDocument(this);
  70.    }
  71.  
  72.    private SchemaDoc getSchemaDoc() {
  73.       return this.doc;
  74.    }
  75.  
  76.    public boolean needsComma(String var1, int var2) {
  77.       return ((QlickerCellEditor)this).needsChar(var1, var2, ',');
  78.    }
  79.  
  80.    public void insertName(String var1) {
  81.       if (this.needsComma(((QlickerCellEditor)this).getText(), ((JTextComponent)this).getSelectionStart())) {
  82.          var1 = String.valueOf(", ").concat(String.valueOf(var1));
  83.       }
  84.  
  85.       ((JTextComponent)this).replaceSelection(var1);
  86.    }
  87.  
  88.    private SchemaWin getSchemaWin() {
  89.       return (SchemaWin)SwingUtilities.windowForComponent(this);
  90.    }
  91.  
  92.    protected JPopupMenu createPopup(MouseEvent var1) {
  93.       return this.createPopup(super.createPopup(var1));
  94.    }
  95.  
  96.    protected JPopupMenu createPopdown() {
  97.       return this.createPopup((JPopupMenu)null);
  98.    }
  99.  
  100.    protected JPopupMenu createPopup(JPopupMenu var1) {
  101.       if (var1 == null) {
  102.          var1 = new ScrollPop();
  103.       } else {
  104.          ((JPopupMenu)var1).addSeparator();
  105.       }
  106.  
  107.       BaseMenu var3 = new BaseMenu(UI.getString("aq.attr.group"));
  108.       JMenuItem var2 = ((JMenu)var3).add(UI.getString("aq.create"));
  109.       ((AbstractButton)var2).addActionListener(this.createAction);
  110.       var2 = ((JMenu)var3).add(UI.getString("aq.edit"));
  111.       ((AbstractButton)var2).addActionListener(this.editAction);
  112.       ((JMenu)var3).addSeparator();
  113.       Enumeration var4 = (Enumeration)super.dataSource.getQlickerData("ATTRGROUPS", Class.forName("java.util.Enumeration"));
  114.  
  115.       while(var4.hasMoreElements()) {
  116.          String var5 = (String)var4.nextElement();
  117.          var2 = ((JMenu)var3).add(new JMenuItem(var5));
  118.          ((AbstractButton)var2).addActionListener(this.actionListener);
  119.       }
  120.  
  121.       if (this.getSchemaDoc().getSchema().isSupported("GESTALT_REUSABLE_ATTRIBUTEGROUP")) {
  122.          ((JPopupMenu)var1).add(var3);
  123.          ((JPopupMenu)var1).addSeparator();
  124.       }
  125.  
  126.       Enumeration var10 = (Enumeration)super.dataSource.getQlickerData("ATTRIBUTES", Class.forName("java.util.Enumeration"));
  127.  
  128.       while(var10.hasMoreElements()) {
  129.          String var6 = (String)var10.nextElement();
  130.          var2 = ((JPopupMenu)var1).add(new JMenuItem(var6));
  131.          ((AbstractButton)var2).addActionListener(this.actionListener);
  132.       }
  133.  
  134.       return (JPopupMenu)var1;
  135.    }
  136.  
  137.    protected JPopupMenu createInsertList() {
  138.       Vector var1 = new Vector();
  139.       ArrayHelp.VectorSortNoCase var2 = new ArrayHelp.VectorSortNoCase(var1);
  140.       Enumeration var3 = (Enumeration)super.dataSource.getQlickerData("ATTRGROUPS", Class.forName("java.util.Enumeration"));
  141.       ArrayHelp.enumToVector(var1, var3);
  142.       ArrayHelp.sort(0, var1.size(), var2);
  143.       if (this.doc.getSchema().getFlavor().isSupported("GESTALT_REUSABLE_ATTRIBUTEGROUP")) {
  144.          SimpleListPopup.ListEntry var4 = new SimpleListPopup.ListEntry(UI.getString("aq.create.reusable"), this.createAction);
  145.          var1.addElement(var4);
  146.       }
  147.  
  148.       int var7 = var1.size();
  149.       var3 = (Enumeration)super.dataSource.getQlickerData("ATTRIBUTES", Class.forName("java.util.Enumeration"));
  150.       ArrayHelp.enumToVector(var1, var3);
  151.       ArrayHelp.sort(var7, var1.size(), var2);
  152.       SimpleListPopup var5 = new SimpleListPopup(var1, new 4(this));
  153.       return var5;
  154.    }
  155.  
  156.    // $FF: synthetic method
  157.    static SchemaWin access$7000071(AttrListQlicker var0) {
  158.       return var0.getSchemaWin();
  159.    }
  160. }
  161.